草庐IT

c++ - 在编译时初始化 c++ std::bitset

全部标签

ruby-on-rails - Rails 3 在 Ruby 1.9.2 上初始化非常慢

我使用RVM管理环境,安装了Ruby1.9.2.p136(我认为是最新版本)和Rails3,创建了gemsets并运行了bundler。到目前为止一切正常但是;Rails在运行命令(即生成、销毁、rake等)时初始化速度非常慢。完成命令大约需要30-45秒。如果使用RubyEnterpriseEdition或Ruby1.8.7,这将永远不会发生为什么会这样。有什么想法吗?在Ubuntu10.10、RVM、Ruby1.9.2、Rails3上运行谢谢。 最佳答案 Rails-Core上有一个关于这个的帖子-http://groups.g

ruby - 在 Ruby 的 Test::Unit::TestCase 中,如何覆盖初始化方法?

我正在为Test::Unit苦苦挣扎。当我想到单元测试时,我会想到每个文件一个简单的测试。但在Ruby的框架中,我必须改写:classMyTest但是每次调用test_*方法时都会运行设置和拆卸。这正是我不想要的。相反,我想要一个只为整个类(class)运行一次的设置方法。但是我似乎无法在不破坏TestCase的初始化的情况下编写自己的initialize()。这可能吗?还是我让这件事变得无可救药地复杂了? 最佳答案 如HalFulton的书“TheRubyWay”中所述。他覆盖了Test::Unit的self.suite方法,该方

ruby - 为什么我不能让 swig wrap std::vector 到 Ruby 类?

我有一个带有嵌入式Ruby解释器的应用程序,以及与swig生成的STL类的接口(interface)。多亏了swig,几乎所有事情都进行得很好,除了一件事:%moduleStuff%import"std_vector.i"namespacestd{%template(Vectord)vector;};%inline%{std::vectortest;%}当我尝试在Ruby中使用它时,类型Stuff::Vectord存在,但它不是生成的单例方法测试的返回类型。查看生成的C包装器文件,我可以看到类Vectord及其方法已定义,但查看_wrap_test_get我没有看到任何返回sth类St

ruby - 使用不同的参数和默认值在 Ruby 中初始化类的最有效方法是什么?

我想要一个类和一些属性,您可以在初始化期间设置这些属性或使用其默认值。classFruitattr_accessor:color,:typedefinitialize(color,type)@color=color||='green'@type=type||='pear'endendapple=Fruit.new(red,apple) 最佳答案 解决此问题的典型方法是使用具有默认值的散列。如果散列值是方法的最后一个参数,Ruby有一个很好的传递散列值的语法。classFruitattr_accessor:color,:typedef

ruby - 如何编译 Ruby?

是否有一种工具可以让我编译Ruby代码使其运行得更快?例如,我听说有一个Python的工具叫“pyc”,它可以让我们编译代码,使其运行速度提高10倍。 最佳答案 简单的答案是您不能,至少对于MRI1.8(标准)。这是因为1.8通过遍历抽象语法树来工作。Python、Ruby1.9、JRuby和Rubinius使用字节码,这允许编译为中间表示(字节码)。从MRIRuby2.3开始,这变得很容易,请参阅answer下面。使用Rubinius,您可以按照这篇文章中的描述进行操作:http://rubini.us/2011/03/17/ru

ruby - 如何使用 new 干净地初始化 Ruby 中的属性?

classFooattr_accessor:name,:age,:email,:gender,:heightdefinitalizeparams@name=params[:name]@age=params[:age]@email=params[:email]...end这似乎是一种愚蠢的做法。在Ruby中初始化对象的更好/更惯用的方法是什么?ruby1.9.3 最佳答案 您可以只遍历键并调用setter。我更喜欢这个,因为如果你传递了一个无效的key,它会捕捉到。classFooattr_accessor:name,:age,:em

ruby-on-rails - 路由错误 - 未初始化的常量

我无法在Rails3.2.12中解决这个问题,也许我遗漏了什么。config/routes.rbget"home/index"root:to=>"home#index"devise_for:users,:only=>:omniauth_callbacksmatch'users/auth/:provider/callback'=>'authentications#create'match'/auth/:provider/signout'=>'authentications#signout'app/controllers/authentication_controller.rbclassA

ruby - 有人尝试过 Crystal 编程语言(机器代码编译的 Ruby)吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion和许多其他人一样,我始终坚信“Ruby永远不会存在纯编译器,因为该语言对于静态编译器来说过于动态,无法工作。”但我最近偶然发现了这些:TheCrystalprogramminglanguageatGitHubStaticallycompiledRuby这两个项目看起来都很有趣。它们可以为我们提供原生编译语言的速度(以及通常是商业需求的编译语言的混淆代码),同时保留Ruby的所有(或大部分)

ruby - Ruby Gem 中未初始化的常量 Rake::DSL

我一直致力于更新我的gem(位于https://github.com/ivanoats/whm_xml_api_ruby的whm_xml)以使其与ruby​​1.9.2、最新的ruby​​gems、最新的bundler、最新的rdoc、最新的rake一起工作。它在1.8.7中运行良好,但仅在1.9.2中出现“未初始化常量Rake::DSL”错误。我认为rake0.9.2解决了这个问题,但也许没有?我在StackOverflow上阅读了很多内容,但仍然卡住了。关于去哪里看有什么想法吗?ivan:~/Development/ruby/whm_xml_api_ruby[git:master+

ruby - 如何在 Ruby 中的哈希中初始化数组

这个问题在这里已经有了答案:Strange,unexpectedbehavior(disappearing/changingvalues)whenusingHashdefaultvalue,e.g.Hash.new([])(4个答案)关闭1年前。我正在尝试初始化一个哈希数组,例如@my_hash=Hash.new(Array.new)这样我就可以:@my_hash["hello"].push("inthestreet")=>["inthestreet"]@my_hash["hello"].push("athome")=>["inthestreet","athome"]@my_hash[